博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
完成注册功能
阅读量:4330 次
发布时间:2019-06-06

本文共 3320 字,大约阅读时间需要 11 分钟。

 

 

  1. js文件: onclick函数return True时才提交表单,return False时不提交表单。
  2. html文件:
    1. <form>中设置 action和method="post"
    2. <input> 中设置 name
  3. 主py文件中:
    1. from flask import  request, redirect, url_for
    2. @app.route('/regist/', methods=['GET', 'POST’])

 

def regist():

 

   if request.method == 'GET':

 

        return render_template('regist.html')

 

   else:

 

        username = request.form.get(‘username’)#获取form中的数据

 

        判断用户名是否存在:存在报错

  不存在,存到数据库中

   redirect重定向到登录页

 

from flask import Flask,render_template,request,redirect,url_for,sessionfrom flask_sqlalchemy import SQLAlchemyimport configapp = Flask(__name__)app.config.from_object(config)db=SQLAlchemy(app)db = SQLAlchemy(app)# 创建用户模型class User(db.Model):    __tablename__ = 'user'    id = db.Column(db.Integer, primary_key=True, autoincrement=True)    username = db.Column(db.String(20), nullable=False)    password = db.Column(db.String(20), nullable=False)#db.create_all()@app.route('/')def homepage():    return render_template("homepage.html")@app.route('/login/')def login():    return render_template("login.html")@app.route("/register/",methods=['GET','POST'])def register():    if request.method == "GET":        return render_template("register.html")    else:        username = request.form.get("username")        password = request.form.get("password")        user = User.query.filter(User.username == username).first()        if user:            return 'username existed.'        else:            user = User(username=username, password=password)            db.session.add(user)            db.session.commit()            return redirect(url_for('login'))@app.route("/question/")def question():    return render_template("question.html")if __name__ == '__main__':    app.run(debug=True)
{% extends'index.html' %} {% block title %}     注册        {% endblock %}{% block head %}    
{% endblock %}{% block main %}

欢迎注册

账号 
密码 
再输入
{% endblock %}
function fnLogin() {        var uname = document.getElementById("name")        var uError = document.getElementById("error_box")        var upassword = document.getElementById("password")        var upasswordagain = document.getElementById("passwordagain")        var isError =true;         if(uname.value.length<6 || uname.value.length >20){        uError.innerHTML="用户名应为6到20字符";        isError = false;         return;    }else if ((uname.value.charCodeAt(0)>=48) && (uname.value.charCodeAt(0)<=57)){        uError.innerHTML="第一位只能是字母";        isError = false;        return ;    } else for (var i=0 ; i
57)&&(uname.value.charCodeAt(i)<97)|| uname.value.charCodeAt(i)>122){ uError.innerHTML="用户名只能为数字或者字母"; isError = false; return; } } if(upassword.value.length<6 || upassword.value.length>12){ uError.innerHTML="密码应为6到20字符"; isError = false; return; } if (upasswordagain.value!=upassword.value ) { uError.innerHTML = "重新输入你的密码"; isError = false; return; } return isError; window.alert("注册成功")}

 

 

 

  

转载于:https://www.cnblogs.com/JaTae/p/7875253.html

你可能感兴趣的文章
一道递归题
查看>>
语法的省略不能造成编译器的歧义
查看>>
Android SDK目录结构和工具介绍
查看>>
Java 反射详解
查看>>
Java&&As3.0 中的final 关键字
查看>>
Linux常用命令大全
查看>>
修改文件所属组和用户
查看>>
C#登陆界面学习编写 2018.08.03
查看>>
AC日记——Little Elephant and Function codeforces 221a
查看>>
fork
查看>>
heart or house?
查看>>
python学习(三)
查看>>
《C#从现象到本质》读书笔记(八)第10章反射
查看>>
面向对象
查看>>
#error#错误原因:Cannot find executable for CFBundle 0x8ad60b0 (not loaded)
查看>>
【JavaScript】浅析javaScript和HTML与unicode字符集的关系
查看>>
Eclipse快捷键大全(转载)
查看>>
BI 底座——数据仓库技术(Data Warehouse)
查看>>
python的面向对象-类的数据属性和实例的数据属性相结合-无命名看你懵逼不懵逼系列...
查看>>
ACM学习历程—BestCoder 2015百度之星资格赛1004 放盘子(策略 && 计算几何)
查看>>